{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Bayesian data analysis\n",
    "##  Chapter 10, demo 2\n",
    "\n",
    "Importance sampling example\n",
    "\n",
    "\n",
    "In importance sampling the proposal $g(\\theta)$ does not need to form an envelope over the target $q(\\theta)$. When computing the expectations, draws are weighted based on the ratio of the proposal and the target.\n",
    "\\begin{align*}\n",
    "  \\mathrm{E}[f(\\theta)] \\approx \\frac{\\sum_s w_s f(\\theta^{(s)})}{\\sum_s\n",
    "      w_s}, \\qquad \\text{where} \\quad \n",
    "     w_s =  \\frac{q(\\theta^{(s)})}{g(\\theta^{(s)})} \\qquad.\n",
    "\\end{align*}\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "from scipy import stats\n",
    "\n",
    "%matplotlib inline\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "import os, sys\n",
    "# add utilities directory to path\n",
    "util_path = os.path.abspath(os.path.join(os.path.pardir, 'utilities_and_data'))\n",
    "if util_path not in sys.path and os.path.exists(util_path):\n",
    "    sys.path.insert(0, util_path)\n",
    "\n",
    "# import from utilities\n",
    "import plot_tools"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "# edit default plot settings\n",
    "plt.rc('font', size=12)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "# fake interesting distribution\n",
    "x = np.linspace(-3, 3, 200)\n",
    "r = np.array([ 1.1 ,  1.3 , -0.1 , -0.7 ,  0.2 , -0.4 ,  0.06, -1.7 ,\n",
    "               1.7 ,  0.3 ,  0.7 ,  1.6 , -2.06, -0.74,  0.2 ,  0.5 ])\n",
    "# Estimate the density (named q, to emphesize that it does not need to be\n",
    "# normalized). Parameter bw_method=0.48 is used to mimic the outcome of the\n",
    "# kernelp function in Matlab.\n",
    "q_func = stats.gaussian_kde(r, bw_method=0.48)\n",
    "q = q_func.evaluate(x)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "# importance sampling example\n",
    "g = stats.norm.pdf(x)\n",
    "w = q / g\n",
    "r = np.random.randn(100)\n",
    "r = r[np.abs(r) < 3] # remove samples out of the grid\n",
    "wr = q_func.evaluate(r)/stats.norm.pdf(r)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\niZ+fH3l5efzrX//ip59+IibG+k6cPXt2Q41L0+N98803Rz1ec8fsbH2+yen99Tks+DmLi8ZHceVx\n/br8+KNj/XnszCFszy3ltg+3U1NX3+UxKKWU6r6WLFnCkCFDDuuwW1BQQHJyMgBBQUGUlPySfKWm\npnLaaaeRn5/fcJk+ffph/WNKSkoIDPxlwMvChQsbmpuWLFnCiBEjSExMbLj/wIEDHTpec8fsbH26\nhubntIM88uVuJicEcevMBKfFMS0pmHvmJPLAwl08tngPd89JPPqDlFJKOUxrak66StNFG2tra/ns\ns8+46667ABgxYgQpKSlMmDABgOrq6sM67O7du5c1a9bw6quvNty2fft2LrrooobrixYt4p133mk4\nXuPEo66uji+//JL77ruv2eNVVVUd9XjNHbOz9dkamv0lVdz+0Q7igjx59IzB2BzUAbi1zhodybyJ\nMbyzLocPNziuF7hSSqmeZciQIaxcuZK9e/dSWFjI9ddfz969extqTObMmcOyZcsath8/fjzLly8n\nKyuLjIwMLr30Uh588EGCg4MBqKysZO3atcyaNQuwEpCqqiqGDrWSuKFDh7JixQp27dpFcXExN910\nE7t3727xeBMmTDji8Zo7piP0yYSmtt5w1yc7qKip4/Gzh+Ln2T0qqv4wvT+T+gfyly93synLsW23\nSimleoaZM2dy9tlnM27cOCZPnkxycjIuLi4MHz4cgEsvvZRFixZRUVEBwAknnMDcuXMZNmwY06dP\n5+KLL+aqq65q2N9nn33GtGnTiI6OBuCLL75gzpw5DffPmDGD888/nwkTJjBp0iRGjRqFt7c3Q4YM\nafZ4M2bMOOLxmjumI4gxzp+xtqioyKFB+Pj4UFZW1nD9qWVpPP9DBg+fmsRpIyIceeg2O1hew4Wv\nrKfewLu/HeP0tZ+alp1qPS279tFyaz8tu/bbt2/fYSN3urPFixfzxz/+kW3btjXcds899xAWFsaN\nN9541Mcfd9xxPP/88w01Lqeddhq///3vG/rQNPXcc8+xcOFCPvroo2aP5+rqSl1dXZuO2ZwdO3YQ\nGxv7q9sDAgJa1YTSPaomutDajCJe+CGD00eEd7tkBiDQ242/nzmEy1/fyIOLUvj7mUN0SXullFIN\ntm3b9qvE4OGHH27141esWHHY9WnTpjF9+vSG66tWrSIqKop+/fqxZMkSHnjgAT788MN2H6+5YzpC\n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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f5c27579f98>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# plot\n",
    "\n",
    "# create subplots with shared x and different styles\n",
    "fig = plt.figure(figsize=(8, 7))\n",
    "ax1 = fig.add_subplot(2, 1, 1)\n",
    "plot_tools.modify_axes.only_x(ax1)\n",
    "with plt.style.context(plot_tools.custom_styles['gray_background']):\n",
    "    ax2 = fig.add_subplot(2, 1, 2, sharex=ax1)\n",
    "# manually hide shared xlables\n",
    "plt.setp(ax1.get_xticklabels(), visible=False)\n",
    "\n",
    "ax1.plot(x, q, label=r'$q(\\theta)$')\n",
    "ax1.plot(x, g, label=r'$g(\\theta)$')\n",
    "ax1.set_title('target and proposal distributions')\n",
    "ax1.legend()\n",
    "\n",
    "ax2.plot(x, w, label=r'$q(\\theta)/g(\\theta)$')\n",
    "ax2.set_title('samples and importance weights')\n",
    "ax2.vlines(r, 0, wr, color='#377eb8', alpha=0.4)\n",
    "ax2.set_ylim((0, ax2.get_ylim()[1]))\n",
    "ax2.legend()\n",
    "\n",
    "fig.tight_layout()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
